package com.summer.peony.system.service;

import com.github.pagehelper.PageInfo;
import com.summer.peony.common.entity.AjaxResult;
import com.summer.peony.system.pojo.SysUser;

/**
 * @ClassName: SysUserService
 * @Description: TODO(用户管理接口层)
 * @author: TaoGe
 * @date: 2020年6月29日 下午2:05:39
 * @version: v0.0.1
 */
public interface SysUserService {

	/**
	 * 新增用户
	 * 
	 * @param sysUser
	 * @return AjaxResult
	 * @author: TaoGe
	 * @date: 2020年6月29日 下午3:19:47
	 * @throws:
	 */
	AjaxResult insert(SysUser sysUser);

	/**
	 * 删除用户
	 * 
	 * @param userId
	 * @return int
	 * @author: TaoGe
	 * @date: 2020年6月29日 下午2:10:58
	 * @throws:
	 */
	Integer deleteByPrimaryKey(Integer userId);

	/**
	 * 修改用户
	 * 
	 * @param sysUser
	 * @return AjaxResult
	 * @author: TaoGe
	 * @date: 2020年6月29日 下午4:20:56
	 * @throws:
	 */
	AjaxResult updateByPrimaryKey(SysUser sysUser);

	/**
	 * 分页查询所有用户
	 * 
	 * @Description: TODO(描述这个方法的作用)
	 * @param userName
	 * @param phone
	 * @param pageNum
	 * @param pageSize
	 * @return PageInfo<SysUser>
	 * @author: TaoGe
	 * @date: 2020年11月2日 下午4:18:03
	 * @throws:
	 */
	PageInfo<SysUser> selectAllUsers(String username, String phone, Integer pageNum, Integer pageSize);

	/**
	 * 查询单个用户
	 * 
	 * @param userId 用户id
	 * @return SysUser
	 * @author: TaoGe
	 * @date: 2020年6月29日 下午2:12:33
	 * @throws:
	 */
	SysUser selectByPrimaryKey(Integer userId);

	/**
	 * 重置密码
	 * 
	 * @Description: TODO(描述这个方法的作用)
	 * @param userId
	 * @return Integer
	 * @author: TaoGe
	 * @date: 2020年11月3日 上午10:58:48
	 * @throws:
	 */
	Integer userPwd(Integer userId);
}
